﻿using System;
using System.Data;
using System.Data.SqlClient;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using DAL;
using CommontLibrary;
using Newtonsoft.Json;
using System.Collections.Generic;
using System.IO;
using System.Net;
public partial class Admin_UserControl_HocVien_insertLevel : System.Web.UI.UserControl
{
    #region "Member variables"
    private int intUserList = 0;
    private int intDiem = 3;
    private int intUserID = 0;
    private int intHocVienID = 0;
    private int intModuleID = 0;
    bool boolRead = false;
    bool boolWrite = false;
    bool boolUpdate = false;
    bool boolDelete = false;
    DAHocVien objHocVien;
    DANguoidung objNguoidung;
    DANguoiTimNguon objNguoiTimNguon;
    DATrangThaiGoi objTrangThaiGoi;
    DANguon objNguon;
    DAHocVienLV2 objLV2;
    DAHocVienLV9 objLV9;
    DAHocVienLV3LV5 objLV3LV5;
    DAHocVienLV6LV8 objLV6LV8;
    DATrangThai objTrangThai;
    DALog objLog;
    DATruong objTruong;

    int intLevelID = 1;
    int m_i_trang_thai_update = 0;
    string m_str_call_id = "9999";
    int int_Level_huong_toi = 1;
    int m_i_add_call_ok = 0;
    string m_str_noi_dung_ngay_goi = "";
    DALichSuCuocGoi objLichSugoi;
    WSCallCenter.CallCenterService m_ws_call = new WSCallCenter.CallCenterService();
    #endregion
    #region "Parametter variables"
    // Ham lay Bind du lieu
    public SqlConnection ConnectionView
    {
        get
        {
            object obj2 = this.ViewState["ConnectionView"];
            if (obj2 != null)
            {
                return (SqlConnection)obj2;
            }
            return null;
        }
        set
        {
            this.ViewState["ConnectionView"] = value;
        }
    }
    #endregion
    #region "Private methods"
    /// <summary>
    /// Created by LinhDH 2012/05/14
    /// Hàm này dùng để chuẩn hóa, đưa số điện thoại nhập vào vê dạng chuẩn
    /// </summary>
    /// <param name="ip_str_sdt">Trả về số điện thoại dạng chuẩn</param>
    /// <returns></returns>
    private string chuan_hoa_so_dien_thoai(string ip_str_sdt)
    {
        string[] v_array = { ".", ",", "  " };
        // Nếu có các ký tự đặc biệt, loại bỏ
        for (int v_i = 0; v_i < v_array.Length; v_i++)
        {
            while (ip_str_sdt.Contains(v_array[v_i]))
            {
                ip_str_sdt = ip_str_sdt.Replace(v_array[v_i], " ");
            }
        }
        return ip_str_sdt;
    }

    private void EnabledDefault()
    {
        this.txtCD.Enabled = false;
        this.txtDH.Enabled = false;
        this.txtPTTH.Enabled = false;
        this.txtTrungCap.Enabled = false;
        this.txtKhactotnghiepLV2.Enabled = false;
        this.txtkhaclaybangLV2.Enabled = false;
        this.cbxquantri.Attributes.Add("disabled", "disabled");
        this.cbxKetoan.Attributes.Add("disabled", "disabled");
        this.cbxTinhoc.Attributes.Add("disabled", "disabled");
        this.cbxtaichinh.Attributes.Add("disabled", "disabled");
        this.cbxkhaclaybangLV2.Attributes.Add("disabled", "disabled");

    }
    // Sua NguoiTimNguon
    private void UpdateGroup()
    {
        if (Page.IsValid)
        {
            int intHocVienID = Convert.ToInt32(this.hdfHocVienID.Value);
            if (checkValidation(intHocVienID))
            {
                string strMaHocVien = this.txtMaHocVien.Text.Trim();
                string strDiaChiThu = this.txtDiaChiThu.Text.Trim();
                string strDienThoai = "";
                string strDienThoai2 = "";
                strDienThoai = Utilities.chuan_hoa_so_dien_thoai(this.txtDienThoai.Text.Trim());
                if (this.txtDienThoai2.Text.Trim() != "")
                    strDienThoai2 = Utilities.chuan_hoa_so_dien_thoai(this.txtDienThoai2.Text.Trim());
                string strDiLam = this.txtDiLam.Text.Trim();
                string strEmail = this.txtEmail.Text.Trim();
                string strEmail2 = this.txtEmail2.Text.Trim();
                string strHoTen = this.txtHoTen.Text.Trim();
                DateTime strNgaySinh;
                if (this.txtNgaySinh.SelectedDate != Convert.ToDateTime("01/01/0001"))
                    strNgaySinh = this.txtNgaySinh.SelectedDate;
                else strNgaySinh = Convert.ToDateTime("01/01/1900");
                //
                DateTime strNgayHenGoiGanNhat;
                if (this.txtNgayHenGoiGanNhat.SelectedDate != Convert.ToDateTime("01/01/0001"))
                    strNgayHenGoiGanNhat = this.txtNgayHenGoiGanNhat.SelectedDate;
                else strNgayHenGoiGanNhat = Convert.ToDateTime("01/01/1900");
                string striGhiChuLichHen = this.txtghi_chu_lich_hen.Text.Trim();
                //
                string striGhiChuNguon = this.txtGhiChuNguon.Text.Trim();
                bool boolGioiTinh = Convert.ToBoolean(this.ddlGioiTinh.SelectedValue);
                int intNguonID = Convert.ToInt32(this.ddlNguon.SelectedValue);
                int intTruongID = Convert.ToInt32(this.ddlTruong.SelectedValue);
                int intNguoiTimNguonID = 0;
                if (this.ddlNguoiTimNguon.Items.Count > 0)
                {
                    intNguoiTimNguonID = Convert.ToInt32(this.ddlNguoiTimNguon.SelectedValue);
                }
                // int intTrangThaiGoiID = Convert.ToInt32(this.ddlTrangThaiGoi.SelectedValue);
                int intChẹck = objHocVien.updateHocVien(intHocVienID, strHoTen, strDienThoai, strDiaChiThu, boolGioiTinh,
                    strNgaySinh, strEmail, strDiLam, intUserID, strMaHocVien, intNguoiTimNguonID,
                    intNguonID, striGhiChuNguon, intTruongID, strNgayHenGoiGanNhat, strDienThoai2, strEmail2, striGhiChuLichHen);
            }
            else m_i_trang_thai_update = 1;
        }
    }
    private void loadTitle(string strTen, string strMaHocVien)
    {
        try
        {
            System.Web.UI.HtmlControls.HtmlControl t = (System.Web.UI.HtmlControls.HtmlControl)this.Page.FindControl("lblTitle");
            t.Controls.Clear();
            t.Controls.Add(new LiteralControl(strMaHocVien + " - " + strTen));
        }
        catch { }
    }
    private void loadDanhSachTrangThaiByLevel(int LevelID)
    {
        string strScript = "<script language=\"javascript\" type=\"text/javascript\">";
        strScript += "\n function DropdownlistInputCheckAll(valueDrop, txtBox)";
        strScript += "\n {";
        strScript += "\n if(valueDrop == -1 ";
        this.ddlTrangThaiAll.Items.Clear();
        ListItem liTemp = new ListItem("--------Chọn trạng thái--------", "-1");
        this.ddlTrangThaiAll.Items.Add(liTemp);
        if (LevelID == 1)
        {
            DataSet dsTrangThai = objTrangThai.LayDanhSachTrangThaiID(2);
            foreach (DataRow dr in dsTrangThai.Tables[0].Rows)
            {
                liTemp = new ListItem(dr["Ten"].ToString(), dr["ID"].ToString());
                if (Convert.ToBoolean(dr["IsMain"].ToString()))
                {
                    strScript += " || valueDrop == " + dr["ID"].ToString();
                }
                this.ddlTrangThaiAll.Items.Add(liTemp);
            }
        }
        else if (LevelID > 1 && LevelID < 6)
        {
            for (int i = LevelID; i < 6; i++)
            {
                DataSet dsTrangThai = objTrangThai.LayDanhSachTrangThaiID(i + 1);
                foreach (DataRow dr in dsTrangThai.Tables[0].Rows)
                {
                    liTemp = new ListItem(dr["Ten"].ToString(), dr["ID"].ToString());
                    if (Convert.ToBoolean(dr["IsMain"].ToString()))
                    {
                        strScript += " || valueDrop == " + dr["ID"].ToString();
                    }
                    this.ddlTrangThaiAll.Items.Add(liTemp);
                }
            }
        }
        else if (LevelID >= 6 && LevelID < 9)
        {
            for (int i = LevelID; i < 9; i++)
            {
                DataSet dsTrangThai = objTrangThai.LayDanhSachTrangThaiID(i + 1);
                foreach (DataRow dr in dsTrangThai.Tables[0].Rows)
                {
                    liTemp = new ListItem(dr["Ten"].ToString(), dr["ID"].ToString());
                    if (Convert.ToBoolean(dr["IsMain"].ToString()))
                    {
                        strScript += " || valueDrop == " + dr["ID"].ToString();
                    }
                    this.ddlTrangThaiAll.Items.Add(liTemp);
                }
            }
        }
        else if (LevelID >= 9 && LevelID < 10)
        {
            for (int i = LevelID; i < 10; i++)
            {
                DataSet dsTrangThai = objTrangThai.LayDanhSachTrangThaiID(i + 1);
                foreach (DataRow dr in dsTrangThai.Tables[0].Rows)
                {
                    liTemp = new ListItem(dr["Ten"].ToString(), dr["ID"].ToString());
                    if (Convert.ToBoolean(dr["IsMain"].ToString()))
                    {
                        strScript += " || valueDrop == " + dr["ID"].ToString();
                    }
                    this.ddlTrangThaiAll.Items.Add(liTemp);
                }
            }
        }

        strScript += ")";
        strScript += "\n {";
        strScript += "\n document.getElementById(txtBox).disabled = true;";
        strScript += "\n }";
        strScript += "\n else";
        strScript += "\n {";
        strScript += "\n      document.getElementById(txtBox).disabled = false; ";
        strScript += "\n }";
        strScript += "\n }</script>";
        this.ltScriptDrop.Text = strScript;
    }
    /// <summary>
    /// LinhDH 2012.08.30
    /// </summary>
    private void loadDanhSachTrangThaiByLevelAndIsMain(int LevelID, bool ip_str_ismain_yn)
    {
        string strScript = "<script language=\"javascript\" type=\"text/javascript\">";
        strScript += "\n function DropdownlistInputCheckAll(valueDrop, txtBox)";
        strScript += "\n {";
        strScript += "\n if(valueDrop == -1 ";
        this.ddlTrangThaiAll.Items.Clear();
        ListItem liTemp = new ListItem("--------Chọn trạng thái--------", "-1");
        DataSet dsTrangThai = objTrangThai.LayDanhSachTrangThaiIDandIsMainYN(LevelID, ip_str_ismain_yn);
        foreach (DataRow dr in dsTrangThai.Tables[0].Rows)
        {
            liTemp = new ListItem(dr["Ten"].ToString(), dr["ID"].ToString());
            if (Convert.ToBoolean(dr["IsMain"].ToString()))
            {
                strScript += " || valueDrop == " + dr["ID"].ToString();
            }
            this.ddlTrangThaiAll.Items.Add(liTemp);
        }
        //this.ddlTrangThaiAll.Items.Add(liTemp);
        //if (LevelID == 1)
        //{
        //    DataSet dsTrangThai = objTrangThai.LayDanhSachTrangThaiIDandIsMainYN(2,ip_str_ismain_yn);
        //    foreach (DataRow dr in dsTrangThai.Tables[0].Rows)
        //    {
        //        liTemp = new ListItem(dr["Ten"].ToString(), dr["ID"].ToString());
        //        if (Convert.ToBoolean(dr["IsMain"].ToString()))
        //        {
        //            strScript += " || valueDrop == " + dr["ID"].ToString();
        //        }
        //        this.ddlTrangThaiAll.Items.Add(liTemp);
        //    }
        //}
        //else if (LevelID > 1 && LevelID < 6)
        //{
        //    for (int i = LevelID; i < 6; i++)
        //    {
        //        DataSet dsTrangThai = objTrangThai.LayDanhSachTrangThaiIDandIsMainYN(i + 1,ip_str_ismain_yn);
        //        foreach (DataRow dr in dsTrangThai.Tables[0].Rows)
        //        {
        //            liTemp = new ListItem(dr["Ten"].ToString(), dr["ID"].ToString());
        //            if (Convert.ToBoolean(dr["IsMain"].ToString()))
        //            {
        //                strScript += " || valueDrop == " + dr["ID"].ToString();
        //            }
        //            this.ddlTrangThaiAll.Items.Add(liTemp);
        //        }
        //    }
        //}
        //else if (LevelID >= 6 && LevelID < 9)
        //{
        //    for (int i = LevelID; i < 9; i++)
        //    {
        //        DataSet dsTrangThai = objTrangThai.LayDanhSachTrangThaiIDandIsMainYN(i + 1, ip_str_ismain_yn);
        //        foreach (DataRow dr in dsTrangThai.Tables[0].Rows)
        //        {
        //            liTemp = new ListItem(dr["Ten"].ToString(), dr["ID"].ToString());
        //            if (Convert.ToBoolean(dr["IsMain"].ToString()))
        //            {
        //                strScript += " || valueDrop == " + dr["ID"].ToString();
        //            }
        //            this.ddlTrangThaiAll.Items.Add(liTemp);
        //        }
        //    }
        //}
        //else if (LevelID >= 9 && LevelID < 10)
        //{
        //    for (int i = LevelID; i < 10; i++)
        //    {
        //        DataSet dsTrangThai = objTrangThai.LayDanhSachTrangThaiIDandIsMainYN(i + 1, ip_str_ismain_yn);
        //        foreach (DataRow dr in dsTrangThai.Tables[0].Rows)
        //        {
        //            liTemp = new ListItem(dr["Ten"].ToString(), dr["ID"].ToString());
        //            if (Convert.ToBoolean(dr["IsMain"].ToString()))
        //            {
        //                strScript += " || valueDrop == " + dr["ID"].ToString();
        //            }
        //            this.ddlTrangThaiAll.Items.Add(liTemp);
        //        }
        //    }
        //}

        strScript += ")";
        strScript += "\n {";
        strScript += "\n document.getElementById(txtBox).disabled = true;";
        strScript += "\n }";
        strScript += "\n else";
        strScript += "\n {";
        strScript += "\n      document.getElementById(txtBox).disabled = false; ";
        strScript += "\n }";
        strScript += "\n }</script>";
        this.ltScriptDrop.Text = strScript;
    }

    private void loadTrangThaiGoi()
    {
        DataSet dsTrangThaiGoi = objTrangThaiGoi.LayDanhSachTrangThaiGoi();
        this.ddlTrangThaiGoi.Items.Clear();
        ListItem liTemp = new ListItem();
        liTemp.Text = "--------Chọn trạng thái--------";
        liTemp.Value = "-1";
        this.ddlTrangThaiGoi.Items.Add(liTemp);
        int i = 0;
        foreach (DataRow dr in dsTrangThaiGoi.Tables[0].Rows)
        {
            liTemp = new ListItem();
            liTemp.Text = dr["Ten"].ToString();
            liTemp.Value = dr["ID"].ToString();
            this.ddlTrangThaiGoi.Items.Add(liTemp);
            i++;
        }
        //BindData.bindDropDownList(this.ddlTrangThaiGoi, dsTrangThaiGoi, "ID", "Ten");
    }
    /// <summary>
    ///  Created by LinhDH
    ///  2012/08/30
    /// </summary>
    private void loadTrangThaiGoiByTiepTucYN(string ip_str_tiep_tuc_YN)
    {
        DataSet dsTrangThaiGoi = objTrangThaiGoi.LayDanhSachTrangThaiGoiByTiepTucYN(ip_str_tiep_tuc_YN);
        this.ddlTrangThaiGoi.Items.Clear();
        ListItem liTemp = new ListItem();
        //liTemp.Text = "--------Chọn trạng thái--------";
        //liTemp.Value = "-1";
        //this.ddlTrangThaiGoi.Items.Add(liTemp);
        int i = 0;
        foreach (DataRow dr in dsTrangThaiGoi.Tables[0].Rows)
        {
            liTemp = new ListItem();
            liTemp.Text = dr["Ten"].ToString();
            liTemp.Value = dr["ID"].ToString();
            this.ddlTrangThaiGoi.Items.Add(liTemp);
            i++;
        }
        //BindData.bindDropDownList(this.ddlTrangThaiGoi, dsTrangThaiGoi, "ID", "Ten");
    }
    private void UpdateTrangthaigoi()
    {

    }
    // Hien thi NguoiTimNguon tren datagrid
    private void loadHocVienID(int intHocVienID)
    {
        DataRow drHocVien = objHocVien.loadHocVienID(intHocVienID);
        if (drHocVien != null)
        {
            this.hdfHocVienID.Value = intHocVienID.ToString();
            BindData.bindTextBox(this.txtDiaChiThu, "", drHocVien["DiaChiThu"].ToString());
            BindData.bindTextBox(this.txtDienThoai, "", Utilities.dien_thoai_Output(drHocVien["DienThoai"].ToString()));
            BindData.bindTextBox(this.txtDienThoai2, "", Utilities.dien_thoai_Output(drHocVien["DienThoai2"].ToString()));
            BindData.bindTextBox(this.txtDiLam, "", drHocVien["DiLam"].ToString());
            BindData.bindTextBox(this.txtEmail, "", drHocVien["Email"].ToString());
            BindData.bindTextBox(this.txtEmail2, "", drHocVien["Email2"].ToString());
            BindData.bindTextBox(this.txtghi_chu_lich_hen, "", drHocVien["GhiChuLichHen"].ToString());
            BindData.bindTextBox(this.txtHoTen, "", drHocVien["HoTen"].ToString());
            BindData.bindTextBox(this.txtMaHocVien, "", drHocVien["MaHocVien"].ToString());
            int intNguonID = Convert.ToInt32(drHocVien["NguonID"].ToString());
            if (Utilities.dien_thoai_Output(drHocVien["DienThoai"].ToString()) != "" && Utilities.dien_thoai_Output(drHocVien["DienThoai"].ToString()) != " ")
            {
                m_cmd_img_call_1.Visible = true;
            }
            if (Utilities.dien_thoai_Output(drHocVien["DienThoai2"].ToString()) != "" && Utilities.dien_thoai_Output(drHocVien["DienThoai2"].ToString()) != " ")
            {
                m_cmd_img_call2.Visible = true;
            }

            if (intNguonID > 0)
            {
                BindData.selectDropDowList(this.ddlNguon, drHocVien["NguonID"].ToString());
            }
            if (Convert.ToBoolean(drHocVien["Import_YN"]))
            {
                txtGhiChuNguon.Visible = false;
                ddlNguoiTimNguon.Visible = false;
                ddlNguon.Visible = false;
                lblNguon.Visible = false;
                lblGhiChuNguon.Visible = false;
                lblNguoiTimNguon.Visible = false;
            }
            else
            {
                if (intNguonID > 0)
                {
                    loadNguoiTimNguon();
                    BindData.selectDropDowList(this.ddlNguoiTimNguon, drHocVien["NguoiTimNguonID"].ToString());
                }
            }
            BindData.bindTextBox(this.txtGhiChuNguon, "", drHocVien["GhiChuNguon"].ToString());
            if (drHocVien["NgaySinh"].GetType() != typeof(DBNull))
            {
                DateTime dateStartDate = Convert.ToDateTime(drHocVien["NgaySinh"].ToString().Trim());
                this.txtNgaySinh.SelectedDate = dateStartDate;
            }
            if (drHocVien["NgayHenGoiGanNhat"].GetType() != typeof(DBNull))
            {
                DateTime dateNearestDate = Convert.ToDateTime(drHocVien["NgayHenGoiGanNhat"].ToString().Trim());
                this.txtNgayHenGoiGanNhat.SelectedDate = dateNearestDate;

            }
            intDiem = Convert.ToInt32(drHocVien["Diem"].ToString());
            bool strSex = Convert.ToBoolean(drHocVien["GioiTinh"].ToString());
            if (strSex)
            {
                this.ddlGioiTinh.Items[0].Selected = true;
            }
            else
            {
                this.ddlGioiTinh.Items[1].Selected = true;
            }
            int intTruongID = Convert.ToInt32(drHocVien["TruongID"].ToString());
            if (intTruongID > 0)
            {
                BindData.selectDropDowList(this.ddlTruong, drHocVien["TruongID"].ToString());
                //loadNguoiTimNguon();
                //BindData.selectDropDowList(this.ddlNguoiTimNguon, drHocVien["NguoiTimNguonID"].ToString());
            }
            BindData.selectDropDowList(this.ddlTrangThaiGoi, drHocVien["TrangThaiGoiID"].ToString());
            loadTitle(drHocVien["HoTen"].ToString(), drHocVien["MaHocVien"].ToString());
        }
    }
    private void loadNguon()
    {
        DataSet dsNguon = objNguon.LayDanhSachNguon();
        BindData.bindDropDownList(this.ddlNguon, dsNguon, "ID", "Ten");
    }
    private void loadTruong()
    {
        DataSet dsTruong = objTruong.LayDanhSachTruong();
        BindData.bindDropDownList(this.ddlTruong, dsTruong, "ID", "Ten");
    }
    private void loadNguoiTimNguon()
    {
        try
        {
            int intNguonID = Convert.ToInt32(this.ddlNguon.SelectedValue);
            int intTruongID = Convert.ToInt32(this.ddlTruong.SelectedValue);
            DataSet dsNguon = objNguoiTimNguon.loadNguoiTimNguonbyNguon(intNguonID);
            if (dsNguon != null && dsNguon.Tables[0].Rows.Count > 0)
            {
                this.ddlNguoiTimNguon.Enabled = true;
                BindData.bindDropDownList(this.ddlNguoiTimNguon, dsNguon, "ID", "HoTen");
            }
            else
            {
                this.ddlNguoiTimNguon.Items.Clear();
                this.ddlNguoiTimNguon.Enabled = false;
            }
        }
        catch
        {
            this.ddlNguoiTimNguon.Items.Clear();
            this.ddlNguoiTimNguon.Enabled = false;
        }
    }
    private void ResetHocVien()
    {
        this.txtMaHocVien.Text = "";
        this.txtHoTen.Text = "";
        this.txtDienThoai.Text = "";
        this.txtDienThoai2.Text = "";
        this.txtEmail.Text = "";
        this.txtEmail2.Text = "";
        this.txtNgaySinh.Text = "";
        this.txtDiaChiThu.Text = "";
        this.txtDiLam.Text = "";
    }
    //LV2
    private void loadLV2ID(int LevelID, bool boolCheck)
    {
        try
        {
            DataRow drLV2 = objLV2.loadHocVienLV2ID(intHocVienID, LevelID);
            BindData.bindTextBox(this.txtCD, "", drLV2["CaoDang"].ToString().Replace("`", ""));
            BindData.bindTextBox(this.txtDH, "", drLV2["DaiHoc"].ToString().Replace("`", ""));
            BindData.bindTextBox(this.txtPTTH, "", drLV2["PTTH"].ToString().Replace("`", ""));
            BindData.bindTextBox(this.txtTrungCap, "", drLV2["TrungCap"].ToString().Replace("`", ""));
            BindData.bindTextBox(this.txtKhactotnghiepLV2, "", drLV2["KhacTotNghiep"].ToString().Replace("`", ""));
            BindData.bindTextBox(this.txtkhaclaybangLV2, "", drLV2["KhacLayBang"].ToString());
           
            DateTime dateStartDate = Convert.ToDateTime(drLV2["NgayGoi"].ToString().Trim());

            this.txtNgayGoiLV2.SelectedDate = dateStartDate;
        
            if (boolCheck)
            {
                BindData.selectDropDowList(this.ddlTrangThaiAll, drLV2["TrangThaiID"].ToString());
                BindData.bindTextBox(this.txtTaiSao, "", drLV2["NoiDungTaiSao"].ToString());
                this.txtTaiSao.Enabled = true;
            }
            if (!drLV2["CaoDang"].ToString().Equals("") && !drLV2["CaoDang"].ToString().Equals("`"))
            {
                this.cbxCD.Checked = true;
                this.txtCD.Enabled = true;
            }
            if (!drLV2["DaiHoc"].ToString().Equals("") && !drLV2["DaiHoc"].ToString().Equals("`"))
            {
                this.cbxDH.Checked = true;
                this.txtDH.Enabled = true;
            }
            if (!drLV2["PTTH"].ToString().Equals("") && !drLV2["PTTH"].ToString().Equals("`"))
            {
                this.cbxPTTH.Checked = true;
                this.txtPTTH.Enabled = true;
            }
            if (!drLV2["TrungCap"].ToString().Equals("") && !drLV2["TrungCap"].ToString().Equals("`"))
            {
                this.cbxTrungCap.Checked = true;
                this.txtTrungCap.Enabled = true;
            }
            if (!drLV2["KhacTotNghiep"].ToString().Equals("") && !drLV2["KhacTotNghiep"].ToString().Equals("`"))
            {
                this.cbxKhactotnghiep.Checked = true;
                this.txtKhactotnghiepLV2.Enabled = true;
            }
            if (!this.txtkhaclaybangLV2.Text.Trim().Equals("") && !this.txtkhaclaybangLV2.Text.Trim().Equals("`"))
            {
                this.cbxkhaclaybangLV2.Checked = true;
               
            }
            this.cbxquantri.Checked = Convert.ToBoolean(drLV2["QuanTriKinhDoanh"].ToString().Trim());
            this.cbxKetoan.Checked = Convert.ToBoolean(drLV2["KeToan"].ToString().Trim());
            this.cbxTinhoc.Checked = Convert.ToBoolean(drLV2["TinHocUngDung"].ToString().Trim());
            this.cbxtaichinh.Checked = Convert.ToBoolean(drLV2["TaiChinhNganHang"].ToString().Trim());
            // this.cbxluatkinhte.Checked = Convert.ToBoolean(drLV2["LuatKinhTe"].ToString().Trim());
            if (this.cbxquantri.Checked == true || this.cbxKetoan.Checked == true || this.cbxluatkinhte.Checked == true ||
                this.cbxTinhoc.Checked == true || this.cbxtaichinh.Checked == true || !this.txtkhaclaybangLV2.Text.Trim().Equals(""))
            {
                this.rdbCoLV2.Checked = true;
                this.rdbKhongLV2.Checked = false;
                this.cbxquantri.Attributes.Remove("disabled");
                this.cbxKetoan.Attributes.Remove("disabled");
                this.cbxTinhoc.Attributes.Remove("disabled");
                this.cbxtaichinh.Attributes.Remove("disabled");
                this.cbxluatkinhte.Attributes.Remove("disabled");
                this.cbxkhaclaybangLV2.Attributes.Remove("disabled");
               
                if (this.txtkhaclaybangLV2.Text.Trim().Equals(""))
                {
                    this.txtkhaclaybangLV2.Enabled = false;
                    this.cbxkhaclaybangLV2.Checked = false;
                }
                else
                {
                    this.txtkhaclaybangLV2.Enabled = true;
                    this.cbxkhaclaybangLV2.Checked = true;
                }
            }
            else
            {
                if (this.txtkhaclaybangLV2.Text.Trim().Equals(""))
                {
                    this.txtkhaclaybangLV2.Enabled = false;
                    this.cbxkhaclaybangLV2.Checked = false;
                }
                else
                {
                    this.cbxkhaclaybangLV2.Checked = true;
                }
                this.rdbCoLV2.Checked = false;
                this.rdbKhongLV2.Checked = true;
            }
            // vùng load lịch sử gọi
            DataSet v_ds_hist_call = new DataSet();
            v_ds_hist_call = objLichSugoi.load_lich_su_goi_cua_hoc_vien(intHocVienID, 2); // order by ID, cái nào mới nhất lên đầu
            if (v_ds_hist_call.Tables[0].Rows.Count > 0)
            {
                // 1. Load cuộc gọi gần nhất
                /*if (v_ds_hist_call.Tables[0].Rows[0][TB_LichSuCuocGoi.NoiDungCuocGoi].ToString() != "")
                {
                    txtNgayGoiGanNhatL2.SelectedDate = Convert.ToDateTime(v_ds_hist_call.Tables[0].Rows[0][TB_LichSuCuocGoi.EndTime]);
                    txtNoiDungGoiGanNhatLV2.Text = v_ds_hist_call.Tables[0].Rows[0][TB_LichSuCuocGoi.NoiDungCuocGoi].ToString();
                }*/

                // 2. Load danh sách lịch sử gọi
                grvLichSuCuocGoiL2.DataSource = v_ds_hist_call.Tables[0];
                grvLichSuCuocGoiL2.DataBind();
            }
            //else
            //{
            //    if (drlv2["ngaygoi"] != null)
            //    {
            //        datetime datestartdate = convert.todatetime(drlv2["ngaygoi"]);
            //        this.txtngaygoigannhatl2.selecteddate = datestartdate;
            //        binddata.bindtextbox(this.txtnoidunggoigannhatlv2, "", drlv2["noidungngaygoi"].tostring());
            //    }
            //}
        }
        catch { }
    }
    private void ResetLV2()
    {
        this.cbxCD.Checked = false;
        this.txtCD.Text = "";
        this.cbxDH.Checked = false;
        this.txtDH.Text = "";
        this.cbxPTTH.Checked = false;
        this.txtPTTH.Text = "";
        this.cbxTrungCap.Checked = false;
        this.txtTrungCap.Text = "";
        this.cbxKhactotnghiep.Checked = false;
        this.txtKhactotnghiepLV2.Text = "";
        this.cbxquantri.Checked = false;
        this.cbxKetoan.Checked = false;
        this.cbxTinhoc.Checked = false;
        this.cbxtaichinh.Checked = false;
        this.cbxluatkinhte.Checked = false;
        this.cbxkhaclaybangLV2.Checked = false;
        this.txtkhaclaybangLV2.Text = "";
       
    }
    private bool checkValidation(int ip_i_id_hoc_vien)
    {
        this.lblMess.Text = "";
        int intTrangthai = Convert.ToInt32(ddlTrangThaiAll.SelectedValue);
        int intTrangThaiGoiID = Convert.ToInt32(this.ddlTrangThaiGoi.SelectedValue);
        DataRow dr = objTrangThai.loadTrangThaiID(intTrangthai);
        int intLevelID = Convert.ToInt32(dr["LevelID"].ToString());
        string strIsMain = dr["IsMain"].ToString();
        if (strIsMain == "False")
        {
            intLevelID = intLevelID - 1;
        }

        //
        if (intLevelID >= ID_Level.Level5B)   // Trạng thái từ L5B trở đi thì phải điền địa chỉ và nơi làm việc
        {
            if (this.txtNgaySinh.SelectedDate == Convert.ToDateTime("01/01/0001"))
            {
                this.lblMess.Text = "Ngày sinh không được để trống";
                return false;
            }
            if (this.txtDiaChiThu.Text.Trim().Equals(""))
            {
                this.ctvDiaChiThu.IsValid = false;
                return false;
            }
            if (this.txtDiLam.Text.Trim().Equals(""))
            {
                this.ctvDiLam.IsValid = false;
                return false;
            }

        }
        //if (intLevelID >= ID_Level.Level2)
        //{
        //    if (this.txtTaiSao.Text == "")
        //    {
        //        this.lblMess.Text = "Phải điền vào ô Tại sao?";
        //        return false;
        //    }
        //}
        if (intTrangthai == 3)
        {
            if (intTrangThaiGoiID == 10 || intTrangThaiGoiID == 11 || intTrangThaiGoiID == 12)   // Trạng thái từ L2 trở đi thì phải điền vào ô tại sao
            {
                if (this.txtTaiSao.Text == "")
                {
                    this.lblMess.Text = "Phải điền vào ô Tại sao?";
                    return false;
                }


            }
        }
        //
        decimal v_dc_nguoi_dung_id = Convert.ToDecimal(Session["UserID"].ToString());
        //if (!this.txtTaiSao.Text.Trim().Equals(""))
        //{
        //    //this.txtTaiSao.Text.Trim().Length < 10
        //    this.ctvTaisao.IsValid = false;
        //    return false;
        //}
        if (this.txtDienThoai.Text.Trim().Length < 9 || this.txtDienThoai.Text.Trim().Length > 12)
        // (this.txtDienThoai.Text.IndexOf("/") == 0 && !Utilities.ValidatePhoneMask(txtDienThoai.Text)))
        {
            this.ctvDienThoai.ErrorMessage = "Một số điện thoại phải trong khoảng từ 9 - 12 số";
            this.ctvDienThoai.IsValid = false;
            return false;
        }
        else
        {
            string strDienThoai = Utilities.chuan_hoa_so_dien_thoai(txtDienThoai.Text.Trim());
            string strDienThoai2 = Utilities.chuan_hoa_so_dien_thoai(txtDienThoai2.Text.Trim());
            string strEmail = txtEmail.Text.Trim();
            string strEmail2 = txtEmail2.Text.Trim();
            string v_str_value = objHocVien.checkSoDienThoaiHocVienUpdate(strDienThoai, ip_i_id_hoc_vien);
            if (v_str_value != "")
            {
                this.ctvDienThoai.ErrorMessage = "Số điện thoại bạn nhập đã bị trùng với Ứng viên: " + v_str_value;
                this.ctvDienThoai.IsValid = false;
                return false;
            }
            if (strDienThoai2 != "")
            {
                strDienThoai2 = chuan_hoa_so_dien_thoai(strDienThoai2);
                string v_str_value_dt2 = objHocVien.checkSoDienThoaiHocVienUpdate(strDienThoai2, ip_i_id_hoc_vien);
                if (v_str_value_dt2 != "")
                {
                    this.ctvDienThoai.ErrorMessage = "Số điện thoại 2 bạn nhập đã bị trùng với Ứng viên: " + v_str_value_dt2;
                    this.ctvDienThoai.IsValid = false;
                    return false;
                }
            }
            string v_str_value_email = objHocVien.checkEmailHocVienUpdate(strEmail, ip_i_id_hoc_vien);
            if (v_str_value_email != "")
            {
                this.ctvDienThoai.ErrorMessage = "Email bạn nhập đã bị trùng với Ứng viên: " + v_str_value_email;
                this.ctvDienThoai.IsValid = false;
                return false;
            }
            if (strEmail2 != "")
            {
                string v_str_value_email2 = objHocVien.checkEmailHocVienUpdate(strEmail2, ip_i_id_hoc_vien);
                if (v_str_value_email2 != "")
                {
                    this.ctvDienThoai.ErrorMessage = "Email bạn nhập đã bị trùng với Ứng viên: " + v_str_value_email2;
                    this.ctvDienThoai.IsValid = false;
                    return false;
                }
            }
            return true;
        }
    }
    private bool checkL2()
    {
        this.lblMess.Text = "";
        if (this.txtDiLam.Text.Trim().Equals(""))
        {
            this.ctvDiLam.IsValid = false;
            return false;
        }
        if (!(this.cbxCD.Checked || this.cbxDH.Checked || this.cbxPTTH.Checked || this.cbxTrungCap.Checked || this.cbxKhactotnghiep.Checked))
        {
            this.lblMess.Text = "Phải điền ít nhất tên một trường đã tốt nghiệp.";
            return false;
        }


        if (this.cbxCD.Checked)
        {
            if (this.txtCD.Text == "")
            {
                this.lblMess.Text = "Phải điền tên trường Cao đẳng";
                return false;
            }

        }

        if (this.cbxDH.Checked)
        {
            if (this.txtDH.Text == "")
            {
                this.lblMess.Text = "Phải điền tên trường Đại học";
                return false;
            }

        }

        if (this.cbxPTTH.Checked)
        {
            if (this.txtPTTH.Text == "")
            {
                this.lblMess.Text = "Phải điền tên trường THPT";
                return false;
            }

        }

        if (this.cbxTrungCap.Checked)
        {
            if (this.txtTrungCap.Text == "")
            {
                this.lblMess.Text = "Phải điền tên trường Trung cấp";
                return false;
            }

        }

        if (this.cbxKhactotnghiep.Checked)
        {
            if (this.txtKhactotnghiepLV2.Text == "")
            {
                this.lblMess.Text = "Phải điền tên trường tốt nghiệp khác.";
                return false;
            }

        }

        if (this.rdbCoLV2.Checked)
        {
            if (!(this.cbxquantri.Checked || this.cbxKetoan.Checked || this.cbxTinhoc.Checked
                || this.cbxtaichinh.Checked || this.cbxluatkinhte.Checked || this.cbxkhaclaybangLV2.Checked))
            {
                this.lblMess.Text = "Phải tích ngành muốn học.";
                return false;
            }

        }
        if (this.cbxkhaclaybangLV2.Checked && this.txtkhaclaybangLV2.Text == "")
        {
            this.lblMess.Text = "Phải điền vào ô Khác/Ghi chú thêm(ghi rõ).";
            return false;
        }
        //if (this.txtghichukhacLV2.Text.Trim().Equals(""))
        //{
        //    this.ctvghichukhacLV2.IsValid = false;
        //    this.lblMess.Text = "";
        //    return false;
        //}
        return true;
    }


    private void CreateLV2(bool checkUpdate)
    {
        //if (checkL2())
        {
          
            
                int intLevelIDView = Convert.ToInt32(this.ddlTrangThaiAll.SelectedValue);
                if (intLevelIDView != 3 && intLevelIDView != 20) {
                    if (!checkL2())
                    {
                        // m_i_add_call_ok = 10; // 10 la ko cho nhap call infor
                        return;
                    }
                }
                       
            string strCD = this.txtCD.Text.Trim() != "" ? this.txtCD.Text.Trim() : "`";
            string strDH = this.txtDH.Text.Trim() != "" ? this.txtDH.Text.Trim() : "`";
            string strPTTH = this.txtPTTH.Text.Trim() != "" ? this.txtPTTH.Text.Trim() : "`";
            string strTrungcap = this.txtTrungCap.Text.Trim() != "" ? this.txtTrungCap.Text.Trim() : "`";
            string strKhactotnghiep = this.txtKhactotnghiepLV2.Text.Trim() != "" ? this.txtKhactotnghiepLV2.Text.Trim() : "`";
            //
            bool boolQuantri = false;
            bool boolKetoan = false;
            bool boolTinhoc = false;
            bool boolTaichinh = false;
            bool boolLuat = false;
            string strKhaclaybang = "";
            if (this.rdbCoLV2.Checked)
            {
                boolQuantri = Convert.ToBoolean(this.cbxquantri.Checked);
                boolKetoan = Convert.ToBoolean(this.cbxKetoan.Checked);
                boolTinhoc = Convert.ToBoolean(this.cbxTinhoc.Checked);
                boolTaichinh = Convert.ToBoolean(this.cbxtaichinh.Checked);
                strKhaclaybang = this.txtkhaclaybangLV2.Text.Trim();
                boolLuat = Convert.ToBoolean(this.cbxluatkinhte.Checked);
            }
           
            DateTime dtNgayGoi;
            if (!checkUpdate)
                dtNgayGoi = this.txtNgayGoiLV2.SelectedDate;
            else dtNgayGoi = DateTime.Now;
           
            int intTrangThaiGoiID = -1;
            string strNoiDungTaiSao = "";

            if (checkUpdate)
            {
                intTrangThaiGoiID = Convert.ToInt32(this.ddlTrangThaiGoi.SelectedValue);
                strNoiDungTaiSao = this.txtTaiSao.Text.Trim();
            }
            //this.ctvTaisao.IsValid = true;
            m_str_noi_dung_ngay_goi = txtNoiDungNgayGoiAll.Text.Trim();
            int intTrangthai = Convert.ToInt32(ddlTrangThaiAll.SelectedValue);
            int intChẹck = objLV2.insertHocVienLV2(intHocVienID, strCD, strDH, strPTTH, strTrungcap, strKhactotnghiep, boolQuantri,
                                                    boolKetoan, boolTinhoc, boolTaichinh, boolLuat, strKhaclaybang,intTrangthai,
                                                    intUserList, dtNgayGoi, 2, strNoiDungTaiSao, intTrangThaiGoiID, m_str_noi_dung_ngay_goi);
            if (intChẹck > 0)
            {
                if (checkUpdate)
                {
                    this.lblMess.Text = "Thêm thành công bản ghi";
                    lblScript.Text = "<script language=javascript >ResetFormParent('fromDefault');</script>";
                }
            }
            else if (intChẹck == 0)
            {
                this.lblMess.Text = "Bản ghi này đã có trong dữ liệu!";
            }
            else
            {
                this.lblMess.Text = "Lỗi trong quá trình sửa bản ghi!";
            }
        }
    }
    //End LV2
    //LV3-LV5B
    private void loadDiem()
    {
        this.ddlDiem.Items.Clear();
        ListItem liTemp = new ListItem();
        liTemp.Text = "3";
        liTemp.Value = "3";
        this.ddlDiem.Items.Add(liTemp);

        liTemp = new ListItem();
        liTemp.Text = "2";
        liTemp.Value = "2";
        this.ddlDiem.Items.Add(liTemp);

        liTemp = new ListItem();
        liTemp.Text = "1";
        liTemp.Value = "1";
        this.ddlDiem.Items.Add(liTemp);
        liTemp = new ListItem();
        liTemp.Text = "0";
        liTemp.Value = "0";
        this.ddlDiem.Items.Add(liTemp);
    }
    private void loadLV3LV5BID(int LevelID, bool boolCheck)
    {
        try
        {
            int v_i_levelID = Int32.Parse(Request.QueryString["LevelView"]);
            DataRow drhovien = objHocVien.loadHocVienID(intHocVienID);
            
            DataRow drLV3LV5 = objLV3LV5.loadHocVienLV3LV5ID(intHocVienID, LevelID);
            BindData.bindTextBox(this.txtlichhenLV3LV5, "", drLV3LV5["LichHen"].ToString());
            BindData.bindTextBox(this.txtKhongLichHenLV3LV5, "", drLV3LV5["LyDoTuChoi"].ToString());
            BindData.bindTextBox(this.txtGoilaiLV3LV5, "", drLV3LV5["GoiLai"].ToString());
           
            BindData.bindTextBox(this.txtlydochuagapLV3LV5, "", drLV3LV5["LydoChuaGap"].ToString());
           
            BindData.bindTextBox(this.txtdangkydutuyenLV3LV5, "", drLV3LV5["DangKyDuTuyen"].ToString());
            BindData.bindTextBox(this.txtnengoilaigapLV3LV5, "", drLV3LV5["NenGoiLaiGap"].ToString());
            BindData.bindTextBox(this.txtchuanopphieuLV3LV5, "", drLV3LV5["NopPhieu"].ToString());
            BindData.bindTextBox(this.txtnengoilaidangkyLV3LV5, "", drLV3LV5["NenGoiLaiDangKy"].ToString());
            DateTime dateStartDate = Convert.ToDateTime(drLV3LV5["NgayGoi"].ToString().Trim());
            this.txtNgayGoiGanNhatLV3LV5.SelectedDate = dateStartDate;
          
            if (boolCheck)
            {
                BindData.selectDropDowList(this.ddlTrangThaiAll, drLV3LV5["TrangThaiID"].ToString());
                BindData.bindTextBox(this.txtTaiSao, "", drLV3LV5["NoiDungTaiSao"].ToString());
                this.txtTaiSao.Enabled = true;
            }
            if (drhovien["FileDinhKem"].ToString().Equals(""))
            {
                this.lable_upload.Visible = true;
                this.m_up_file_hocvien.Visible = true;
                this.m_link_file.Visible = false;
            }
            else {
                this.lable_upload.Visible = false;
                this.m_up_file_hocvien.Visible = false;
                this.m_link_file.Visible = true;
                string v_str_link = drhovien["FileDinhKem"].ToString().Replace("\\", "/");
                m_link_file.NavigateUrl = "http://crmtpets8.topica.vn/" + v_str_link;
            }
            //if (drLV3LV5["Ghichu3"].ToString().ToUpper().Equals("TRUE"))
            //{
            //    this.rdblghichu3LV3Lv5.Items[0].Selected = true;
            //    this.rdblghichu3LV3Lv5.Items[1].Selected = false;
            //}
            //else
            //{
            //    this.rdblghichu3LV3Lv5.Items[0].Selected = false;
            //    this.rdblghichu3LV3Lv5.Items[1].Selected = true;
            //}
            // Nếu lịch hẹn trống --> chưa đồng ý hẹn gặp
            if ((!drLV3LV5["LyDoChuaNhan"].ToString().Equals("")) && (!drLV3LV5["LyDoChuaNhan"].ToString().Equals(" ")))
            {
                this.rbldanhanGF300.Checked = false;
                this.rblchuanhanGF300.Checked = true;
               
            }
            else
            {
                this.rbldanhanGF300.Checked = true;
                this.rblchuanhanGF300.Checked = false;
               
            }
            if ((!drLV3LV5["LichHen"].ToString().Equals("")) && (!drLV3LV5["LichHen"].ToString().Equals(" ")))
            {
                this.rdbLichhenLV3LV5.Checked = true;
                this.txtlichhenLV3LV5.Enabled = true;
            }
            else
            {
                this.rdbLichhenLV3LV5.Checked = false;
                this.txtlichhenLV3LV5.Enabled = false;
            }
            this.rdbKhongLichhenLV3LV5.Checked = (!this.rdbLichhenLV3LV5.Checked);
            this.txtKhongLichHenLV3LV5.Enabled = (!this.txtlichhenLV3LV5.Enabled);

            // Load level 4: Phần có gặp trực tiếp không?
            // Nếu đây lớn hơn hoặc bằng level 4 thì mới tick vào các cái này, còn không chưa tick gì
            if (LevelID >= ID_Level.Level4)
            {
                if ((!drLV3LV5["LydoChuaGap"].ToString().Equals("")) && (!drLV3LV5["LydoChuaGap"].ToString().Equals(" ")))
                {
                    this.rblRoigaptructiepLV3LV5.Checked = false;
                    this.rblChuatoigaptructiepLV3LV5.Checked = true;
                    this.txtlydochuagapLV3LV5.Enabled = true;
                }
                else
                {
                    this.rblRoigaptructiepLV3LV5.Checked = true;
                    this.rblChuatoigaptructiepLV3LV5.Checked = false;
                    this.txtlydochuagapLV3LV5.Enabled = false;
                }
            }

            // Load phần đăng ký dự tuyển tương đương với L5A và ko phải đang load thông tin Level tiếp khi hiện tại đang là L4
            if (LevelID >= ID_Level.Level5A && v_i_levelID != ID_Level.Level4)
            {
                if ((!drLV3LV5["DangKyDuTuyen"].ToString().Equals("")) && (!drLV3LV5["DangKyDuTuyen"].ToString().Equals(" ")))
                {
                    this.rdblCodangkydutuyenLV3LV5.Checked = false;
                    this.rdblKhongdangkydutuyenLV3LV5.Checked = true;
                    this.txtdangkydutuyenLV3LV5.Enabled = true;
                }
                else
                {
                    this.rdblCodangkydutuyenLV3LV5.Checked = true;
                    this.rdblKhongdangkydutuyenLV3LV5.Checked = false;
                    this.txtdangkydutuyenLV3LV5.Enabled = false;
                }
            }

            // Load phần nộp phiếu >=5B
            if (LevelID >= ID_Level.Level5B && v_i_levelID != ID_Level.Level5A)
            {
                if ((!drLV3LV5["NopPhieu"].ToString().Equals("")) && (!drLV3LV5["NopPhieu"].ToString().Equals(" ")))
                {
                    this.rdblRoiNopPhieuLV3LV5.Checked = false;
                    this.rdblChuaNopPhieuLV3LV5.Checked = true;
                    this.txtchuanopphieuLV3LV5.Enabled = true;
                }
                else
                {
                    this.rdblRoiNopPhieuLV3LV5.Checked = true;
                    this.rdblChuaNopPhieuLV3LV5.Checked = false;
                    this.txtchuanopphieuLV3LV5.Enabled = false;
                }
            }
            // vùng load lịch sử gọi
            DataSet v_ds_hist_call = new DataSet();
            v_ds_hist_call = objLichSugoi.load_lich_su_goi_cua_hoc_vien(intHocVienID, 3); // order by ID, cái nào mới nhất lên đầu
            if (v_ds_hist_call.Tables[0].Rows.Count > 0)
            {
                // 1. Load cuộc gọi gần nhất
                //if (v_ds_hist_call.Tables[0].Rows[0][TB_LichSuCuocGoi.NoiDungCuocGoi].ToString() != "")
                //{
                //    txtNgayGoiGanNhatL3L5B.SelectedDate = Convert.ToDateTime(v_ds_hist_call.Tables[0].Rows[0][TB_LichSuCuocGoi.EndTime]);
                //    txtNoiDungNgayGoiGanNhatLV3LV5B.Text = v_ds_hist_call.Tables[0].Rows[0][TB_LichSuCuocGoi.NoiDungCuocGoi].ToString();
                //}
                // 2. Load danh sách lịch sử gọi
                grvLichSuGoiL35B.DataSource = v_ds_hist_call.Tables[0];
                grvLichSuGoiL35B.DataBind();
            }
            //else
            //{
            //    if (drLV3LV5[TB_L3_5B.NgayGoi] != null)
            //    {
            //        DateTime dateStartDate = Convert.ToDateTime(drLV3LV5[TB_L3_5B.NgayGoi].ToString().Trim());
            //        this.txtNgayGoiGanNhatL3L5B.SelectedDate = dateStartDate;
            //        BindData.bindTextBox(this.txtNoiDungNgayGoiGanNhatLV3LV5B, "", drLV3LV5[TB_L3_5B.NoiDungNgayGoi].ToString());
            //    }
            //}
        }
        catch { }
    }
    private void ResetLV3LV5B()
    {
        this.txtlichhenLV3LV5.Text = "";
        this.txtKhongLichHenLV3LV5.Text = "";
        this.txtGoilaiLV3LV5.Text = "";
        //this.txtgoilailan1LV3LV5.Text = "";
        //this.txtghichu1LV3LV5.Text = "";
        //this.txtgoilan2LV3LV5.Text = "";
        //this.txtghichu2LV3LV5.Text = "";
        //this.txtgoilan3LV3LV5.Text = "";

     
        this.txtlydochuagapLV3LV5.Text = "";
        this.txtdangkydutuyenLV3LV5.Text = "";
        this.txtnengoilaidangkyLV3LV5.Text = "";
        this.txtchuanopphieuLV3LV5.Text = "";
        this.txtnengoilaidangkyLV3LV5.Text = "";
    }
    private bool CheckValidLV3LV5B()
    {
        int intTrangthai = Convert.ToInt32(ddlTrangThaiAll.SelectedValue);
        int intTrangThaiGoiID = Convert.ToInt32(this.ddlTrangThaiGoi.SelectedValue);
        DataRow dr = objTrangThai.loadTrangThaiID(intTrangthai);
        int intLevelID = Convert.ToInt32(dr["LevelID"].ToString());
        string strIsMain = dr["IsMain"].ToString();
        if (strIsMain == "False")
        {
            intLevelID = intLevelID - 1;
        }

        if (intLevelID >= ID_Level.Level3
            && !(this.rdbLichhenLV3LV5.Checked || this.rdbKhongLichhenLV3LV5.Checked))
        {
            this.lblMess.Text = "Phải tích vào thông tin Có nhận lời tới gặp trực tiếp không?";
            return false;
        }
        if (intLevelID >= ID_Level.Level3 && intLevelID >= ID_Level.Level3 && this.rdbLichhenLV3LV5.Checked && this.txtlichhenLV3LV5.Text == "")
        {
            this.lblMess.Text = "Phải điền lịch hẹn gặp trực tiếp";
            return false;
        }
        if (intLevelID >= ID_Level.Level3 && this.rdbKhongLichhenLV3LV5.Checked && this.txtKhongLichHenLV3LV5.Text == "")
        {
            this.lblMess.Text = "Phải điền lý do không gặp trực tiếp";
            return false;
        }
        if (intLevelID >= ID_Level.Level4
            && !(this.rblRoigaptructiepLV3LV5.Checked || this.rblChuatoigaptructiepLV3LV5.Checked))
        {
            this.lblMess.Text = "Phải tích vào thông tin Tới gặp trực tiếp chưa?";
            return false;
        }
        if (intLevelID >= ID_Level.Level4 && this.txtlydochuagapLV3LV5.Text == "" && this.rblChuatoigaptructiepLV3LV5.Checked)
        {
            this.lblMess.Text = "Phải điền ngày gặp trực tiếp hoặc lý do không gặp trực tiếp";
            return false;
        }
        //if (this.txtnengoilaigapLV3LV5.Text == "" && this.rblChuatoigaptructiepLV3LV5.Checked)
        //{
        //    this.lblMess.Text = "Phải điền Có nên gọi trực tiếp không? Khi nào?";
        //    return false;
        //}
        if (intLevelID >= ID_Level.Level5A
            && !(this.rdblCodangkydutuyenLV3LV5.Checked || this.rdblKhongdangkydutuyenLV3LV5.Checked))
        {
            this.lblMess.Text = "Phải tích vào thông tin Đăng ký dự tuyển(F30) chưa(100k)??";
            return false;
        }
        if (intLevelID >= ID_Level.Level5A && this.rdblKhongdangkydutuyenLV3LV5.Checked && this.txtdangkydutuyenLV3LV5.Text == "")
        {
            this.lblMess.Text = "Phải điền lý do không đăng ký dự tuyển.";
            return false;
        }
        if (intLevelID >= ID_Level.Level5B)
        {
            if (!(this.rdblRoiNopPhieuLV3LV5.Checked || this.rdblChuaNopPhieuLV3LV5.Checked))
            {
                this.lblMess.Text = "Phải tích vào Nộp phiếu đăng ký dự tuyển(F30) chưa?";
                return false;
            }

        }
        if (this.rdblChuaNopPhieuLV3LV5.Checked && this.txtchuanopphieuLV3LV5.Text == "")
        {
            this.lblMess.Text = "Phải ghi lý do Chưa nộp phiếu đăng ký dự tuyển F30?";
            return false;
        }
        if (!(this.rbldanhanGF300.Checked || this.rblchuanhanGF300.Checked))
        {
            this.lblMess.Text = "Phải tích vào Đã nhận được GF30 chưa?";
            return false;
        }
      
      
        return true;
    }
    private bool CheckValidLV6LV8()
    {
        int intTrangthai = Convert.ToInt32(ddlTrangThaiAll.SelectedValue);
        int intTrangThaiGoiID = Convert.ToInt32(this.ddlTrangThaiGoi.SelectedValue);
        DataRow dr = objTrangThai.loadTrangThaiID(intTrangthai);
        int intLevelID = Convert.ToInt32(dr["LevelID"].ToString());
        string strIsMain = dr["IsMain"].ToString();
        if (strIsMain == "False")
        {
            intLevelID = intLevelID - 1;
        }


        if (intLevelID >= ID_Level.Level7 && this.txtgiaybaotrungtuyenLV6LV8.Text == "")
        {
            this.lblMess.Text = "Phải điền thông tin Có giấy báo trúng tuyển chưa?";
            return false;
        }
        if (intLevelID == ID_Level.Level7 && this.txtnhandcgiaybaotrungtuyenLV6LV8.Text == "")
        {
            this.lblMess.Text = "Phải điền thông tin Nhận được giấy báo trúng tuyển chưa?.";
            return false;
        }
        if (intLevelID >= ID_Level.Level8 && this.txtnophocphiLV6LV8.Text == "")
        {
            this.lblMess.Text = "Phải điền thông tin Nộp học phí tạm tính đợt 1 chưa?";
            return false;
        }

        if (intLevelID >= ID_Level.Level8 && this.txtNopHoSoLV6LV8.Text == "")
        {
            this.lblMess.Text = "Phải điền thông tin Nộp đủ hồ sơ chưa? Thiếu gì?.";
            return false;
        }
       
        return true;
    }
    private void CreateLV3LV5(int LevelID, bool checkUpdate, int intTrangthai)
    {
        int intDiemL3_5B = Convert.ToInt32(this.ddlDiem.SelectedValue);
        string strLichhen = "";
        string strLyDoTuChoi = "";
        if (this.rdbLichhenLV3LV5.Checked)
        {
            strLichhen = this.txtlichhenLV3LV5.Text.Trim() + "  ";
        }
        if (this.rdbKhongLichhenLV3LV5.Checked)
        {
            strLyDoTuChoi = this.txtKhongLichHenLV3LV5.Text.Trim() + "  ";
            strLichhen = " ";
        }

        string strGoiLai = this.txtGoilaiLV3LV5.Text.Trim();
        //string strGoiLan1 = this.txtgoilailan1LV3LV5.Text.Trim();
        //string strGoiLan2 = this.txtgoilan2LV3LV5.Text.Trim();
        //string strGoiLan3 = this.txtgoilan3LV3LV5.Text.Trim();
        //string strGhichu1 = this.txtghichu1LV3LV5.Text.Trim();
        //string strGhichu2 = this.txtghichu2LV3LV5.Text.Trim();
        //string strGhichu3 = this.rdblghichu3LV3Lv5.SelectedValue;
        string strGoiLan1 = "";
        string strGoiLan2 = "";
        string strGoiLan3 = "";
        string strGhichu1 = "";
        string strGhichu2 = "";
        string strGhichu3 = "";
      

        string strLydoChuaNhanFG30 = "";
        if (this.rbldanhanGF300.Checked) strLydoChuaNhanFG30 = " ";
       

        string strLydoChuaGap = "";
        if (this.rblRoigaptructiepLV3LV5.Checked) strLydoChuaGap = " ";
        if (this.rblChuatoigaptructiepLV3LV5.Checked) strLydoChuaGap = this.txtlydochuagapLV3LV5.Text.Trim() + "  ";

        string strDangKyDuTuyen = "";
        if (this.rdblKhongdangkydutuyenLV3LV5.Checked) strDangKyDuTuyen = this.txtdangkydutuyenLV3LV5.Text.Trim() + "  ";
        if (this.rdblCodangkydutuyenLV3LV5.Checked) strDangKyDuTuyen = " ";

        string strNopPhieu = "";
        if (this.rdblChuaNopPhieuLV3LV5.Checked) strNopPhieu = this.txtchuanopphieuLV3LV5.Text.Trim() + "  ";
        if (this.rdblRoiNopPhieuLV3LV5.Checked) strNopPhieu = " ";
        string strNenGoiLaiGap = this.txtnengoilaigapLV3LV5.Text.Trim();
        string strNenGoiLaiDangKy = this.txtnengoilaidangkyLV3LV5.Text.Trim();

        DateTime dtngaygoi;
        if (!checkUpdate)
            dtngaygoi = this.txtNgayGoiGanNhatLV3LV5.SelectedDate;
        else dtngaygoi = DateTime.Now;
    
        int intTrangThaiGoiID = -1;
        string strNoiDungTaiSao = "";
        if (checkUpdate)
        {
            intTrangThaiGoiID = Convert.ToInt32(this.ddlTrangThaiGoi.SelectedValue);
            strNoiDungTaiSao = this.txtTaiSao.Text.Trim();
        }
        //this.ctvTaisao.IsValid = true;
       string strGhiChuKhac="";
      
       string strNoiDungNgayGoi = txtNoiDungNgayGoiAll.Text.Trim();
        int intChẹck = objLV3LV5.insertHocVienLV3LV5(intHocVienID, strLichhen, strLyDoTuChoi, strGoiLai, strGoiLan1, strGoiLan2, strGoiLan3,
                                                        strGhichu1, strGhichu2, strGhichu3, strGhiChuKhac, strLydoChuaGap, strDangKyDuTuyen,
                                                        strLydoChuaGap, strNopPhieu, strNenGoiLaiDangKy, intTrangthai, LevelID, intUserList,
                                                        dtngaygoi, strNoiDungNgayGoi, strNoiDungTaiSao, intTrangThaiGoiID, intDiemL3_5B, strLydoChuaNhanFG30);
        if (intChẹck > 0)
        {
            if (checkUpdate)
            {
                this.lblMess.Text = "Thêm thành công bản ghi";
                lblScript.Text = "<script language=javascript >ResetFormParent('fromDefault');</script>";
            }
        }
        else if (intChẹck == 0)
        {
            this.lblMess.Text = "Bản ghi này đã có trong dữ liệu!";
        }
        else
        {
            this.lblMess.Text = "Lỗi trong quá trình sửa bản ghi!";
        }
    }
    protected void grvLichSuCuocGoiL2_RowDataBound(object sender, GridViewRowEventArgs e)
    {
        try
        {
            GridViewRow v_grv_row = e.Row;

        }
        catch (Exception v_e)
        {

            throw;
        }
    }
    protected void grvLichSuGoiL35B_RowDataBound(object sender, GridViewRowEventArgs e)
    {
        try
        {

        }
        catch (Exception v_e)
        {

            throw;
        }
    }
    protected void grvLichsuGoiL68_RowDataBound(object sender, GridViewRowEventArgs e)
    {
        try
        {

        }
        catch (Exception v_e)
        {

            throw;
        }
    }
    //End LV3-LV5B
    public string get_file_record(object ip_obj_id)
    {
        string v_str_file = "";
        string v_str_server = ConfigurationManager.AppSettings["DomainCRM"].ToString();
        objLichSugoi.load_call_infor_by_id(Convert.ToInt32(ip_obj_id));
        v_str_file = objLichSugoi.data.link_down_record;
        v_str_file = v_str_file.Replace("/var/spool/asterisk/monitor/Recordings", v_str_server);
        return v_str_file;
    }
    //LV6-LV8
    private void loadL6L8ID(int LevelID, bool boolCheck)
    {
        try
        {
            DataRow drLV6LV8 = objLV6LV8.loadHocVienLV6LV8ID(intHocVienID, LevelID);
            //BindData.bindTextBox(this.txtdenthiLV6LV8, "", drLV6LV8["DenThi"].ToString());
            //BindData.bindTextBox(this.txtBaithiLV6LV8, "", drLV6LV8["BaiThi"].ToString());
            //BindData.bindTextBox(this.txtcodiemLV6LV8, "", drLV6LV8["CoDiem"].ToString());
            BindData.bindTextBox(this.txtgiaybaotrungtuyenLV6LV8, "", drLV6LV8["GiayBaoTrungTuyen"].ToString());
            BindData.bindTextBox(this.txtnhandcgiaybaotrungtuyenLV6LV8, "", drLV6LV8["NhanDuocGiayBaoTrungTuyen"].ToString());
            BindData.bindTextBox(this.txtnophocphiLV6LV8, "", drLV6LV8["NopHocPhi"].ToString());
            BindData.bindTextBox(this.txtNopHoSoLV6LV8, "", drLV6LV8["NopHoSo"].ToString()); ;
            BindData.bindTextBox(this.txtGhichuLV6LV8, "", drLV6LV8["GhiChu"].ToString()); ;
            DateTime dateStartDate = Convert.ToDateTime(drLV6LV8["NgayGoi"].ToString().Trim());
            this.txtNgayGoiGanNhatV6LV8.SelectedDate = dateStartDate;
          
            BindData.bindTextBox(this.txtDuKienNhapHoc, "", drLV6LV8["DuKienNhapHoc"].ToString());
            BindData.bindTextBox(this.txtThucNhapHoc, "", drLV6LV8["ThucNhapHoc"].ToString());
            if (boolCheck)
            {
                BindData.selectDropDowList(this.ddlTrangThaiAll, drLV6LV8["TrangThaiID"].ToString());
                BindData.bindTextBox(this.txtTaiSao, "", drLV6LV8["NoiDungTaiSao"].ToString());
                this.txtTaiSao.Enabled = true;
            }
            // vùng load lịch sử gọi
            DataSet v_ds_hist_call = new DataSet();
            v_ds_hist_call = objLichSugoi.load_lich_su_goi_cua_hoc_vien(intHocVienID, 7); // order by ID, cái nào mới nhất lên đầu
            if (v_ds_hist_call.Tables[0].Rows.Count > 0)
            {
                // 1. Load cuộc gọi gần nhất
                //if (v_ds_hist_call.Tables[0].Rows[0][TB_LichSuCuocGoi.NoiDungCuocGoi].ToString() != "")
                //{
                //    txtNgayGoiGanNhatL6L8.SelectedDate = Convert.ToDateTime(v_ds_hist_call.Tables[0].Rows[0][TB_LichSuCuocGoi.EndTime]);
                //    txtNoiDungGoiGanNhatLV6LV8.Text = v_ds_hist_call.Tables[0].Rows[0][TB_LichSuCuocGoi.NoiDungCuocGoi].ToString();
                //}
                // 2. Load danh sách lịch sử gọi
                grvLichsuGoiL68.DataSource = v_ds_hist_call.Tables[0];
                grvLichsuGoiL68.DataBind();
            }
            //else
            //{
            //    if (drLV6LV8["NgayGoi"] != null)
            //    {
            //        DateTime dateStartDate = Convert.ToDateTime(drLV6LV8["NgayGoi"].ToString().Trim());
            //        this.txtNgayGoiGanNhatL6L8.SelectedDate = dateStartDate;
            //        BindData.bindTextBox(this.txtNoiDungGoiGanNhatLV6LV8, "", drLV6LV8["NoiDungNgayGoi"].ToString());
            //    }
            //}
        }
        catch { }
    }
    private void CreateL6L8(int LevelID, bool checkUpdate, int intTrangthai)
    {
        int intDiemL6_8 = Convert.ToInt32(this.ddlDiem.SelectedValue);
        string strDenThi = "";//this.txtdenthiLV6LV8.Text.Trim();
        string strBaiThi = "";//this.txtBaithiLV6LV8.Text.Trim();
        string strCoDiem = "";//this.txtcodiemLV6LV8.Text.Trim();
        string strGiayBaoTrungTuyen = this.txtgiaybaotrungtuyenLV6LV8.Text.Trim();
        string strNhanDuocGiayBaoTrungTuyen = this.txtnhandcgiaybaotrungtuyenLV6LV8.Text.Trim();
        string strNopHocPhi = this.txtnophocphiLV6LV8.Text.Trim();
        string strNopHoSo = this.txtnophocphiLV6LV8.Text.Trim();
        string strGhichu = this.txtGhichuLV6LV8.Text.Trim();
        DateTime dtngaygoi;
        if (!checkUpdate)
            dtngaygoi = this.txtNgayGoiGanNhatV6LV8.SelectedDate;
        else dtngaygoi = DateTime.Now;
        string strNoiDungNgayGoi = txtNoiDungNgayGoiAll.Text.Trim();
        string strNoiDungTaiSao = this.txtTaiSao.Text.Trim();
        string strDuKienNhapHoc = this.txtDuKienNhapHoc.Text.Trim();
        string strThucNhapHoc = this.txtThucNhapHoc.Text.Trim();
        int intTrangThaiGoiID = Convert.ToInt32(this.ddlTrangThaiGoi.SelectedValue);
        int intChẹck = objLV6LV8.insertHocVienLV6LV8(intHocVienID, strDenThi, strBaiThi, strCoDiem, strGiayBaoTrungTuyen,
                                                strNhanDuocGiayBaoTrungTuyen, strNopHocPhi, strNopHoSo,
                                                intTrangthai, strGhichu, LevelID, intUserList, dtngaygoi,
                                                strNoiDungNgayGoi, strNoiDungTaiSao, intTrangThaiGoiID, intDiemL6_8, strDuKienNhapHoc, strThucNhapHoc);
        if (intChẹck > 0)
        {
            if (checkUpdate)
            {
                this.lblMess.Text = "Thêm thành công bản ghi";
                lblScript.Text = "<script language=javascript >ResetFormParent('fromDefault');</script>";
            }
        }
        else if (intChẹck == 0)
        {
            this.lblMess.Text = "Bản ghi này đã có trong dữ liệu!";
        }
        else
        {
            this.lblMess.Text = "Lỗi trong quá trình sửa bản ghi!";
        }
    }
    private void ResetLV6LV8()
    {
        //this.txtdenthiLV6LV8.Text = "";
        //this.txtBaithiLV6LV8.Text = "";
        //this.txtcodiemLV6LV8.Text = "";
        this.txtgiaybaotrungtuyenLV6LV8.Text = "";
        this.txtnhandcgiaybaotrungtuyenLV6LV8.Text = "";
        this.txtnophocphiLV6LV8.Text = "";
        this.txtNopHoSoLV6LV8.Text = "";
        this.txtGhichuLV6LV8.Text = "";
        this.txtDuKienNhapHoc.Text = "";
        this.txtThucNhapHoc.Text = "";
    }
    //End LV6-LV8
    //LV9
    private void loadLV9ID(int LevelID, bool boolCheck)
    {
        try
        {
            DataRow drLV9 = objLV9.loadHocVienLV9ID(intHocVienID, LevelID);


            //this.cbxNophocphiL9.Checked = Convert.ToBoolean(drLV9["Nophocphi"].ToString().Trim());
            //this.cbxNophosoL9.Checked = Convert.ToBoolean(drLV9["Nophoso"].ToString().Trim());
            DateTime dateNgaynophocphi = Convert.ToDateTime(drLV9["Ngaynophocphi"].ToString().Trim());
            //this.txtNgaynophocphiL9.SelectedDate = dateNgaynophocphi;
            DateTime dateNgaynophoso = Convert.ToDateTime(drLV9["Ngaynophoso"].ToString().Trim());
            this.txtNgayHoanThanhL9.SelectedDate = dateNgaynophoso;
            DateTime dateNgayHoanThanh = Convert.ToDateTime(drLV9["NgayHoanThanh"].ToString().Trim());
            this.txtNgayHoanThanhL9.SelectedDate = dateNgayHoanThanh;
            BindData.bindTextBox(this.txtTaiSao, "", drLV9["NoiDungTaiSao"].ToString());
            BindData.bindTextBox(this.txtNoiDungHoanThanhL9, "", drLV9["NoiDungHoanThanh"].ToString());
            if (boolCheck)
            {
                BindData.selectDropDowList(this.ddlTrangThaiAll, drLV9["TrangThaiID"].ToString());
                BindData.bindTextBox(this.txtTaiSao, "", drLV9["NoiDungTaiSao"].ToString());
                this.txtTaiSao.Enabled = true;
            }
        }
        catch { }
    }
    private void CreateLV9(int LevelID, bool checkUpdate, int intTrangthai)
    {
        //if (checkL2())
        {
            DateTime dtNgayNophocphiL9 = DateTime.Now;
            //if (this.cbxNophocphiL9.Checked) dtNgayNophocphiL9 = this.txtNgaynophocphiL9.SelectedDate;
            DateTime dtNgaynophosoL9 = DateTime.Now;
            //if (this.cbxNophosoL9.Checked) dtNgaynophosoL9 = this.txtNgaynophosoL9.SelectedDate;
            string strNgayHoanThanhL9 = this.txtNgayHoanThanhL9.Text.Trim();
            DateTime dtNgayHoanThanhL9 = this.txtNgayHoanThanhL9.SelectedDate;
            string strNoiDungNgayGoi = this.txtNoiDungHoanThanhL9.Text.Trim();
            int intTrangThaiGoiID = -1;
            string strNoiDungTaiSao = "";
            if (checkUpdate)
            {
                intTrangThaiGoiID = Convert.ToInt32(this.ddlTrangThaiGoi.SelectedValue);
                strNoiDungTaiSao = this.txtTaiSao.Text.Trim();
            }
            //this.ctvTaisao.IsValid = true;
            //int intTrangthai = Convert.ToInt32(ddlTrangThaiAll.SelectedValue);
            int intChẹck = objLV9.insertHocVienLV9(intHocVienID,
                        dtNgayHoanThanhL9, strNoiDungNgayGoi, intUserList, LevelID, intTrangThaiGoiID, strNoiDungTaiSao, intTrangthai);

            if (intChẹck > 0)
            {
                if (checkUpdate)
                {
                    this.lblMess.Text = "Thêm thành công bản ghi";
                    lblScript.Text = "<script language=javascript >ResetFormParent('fromDefault');</script>";
                }
            }
            else if (intChẹck == 0)
            {
                this.lblMess.Text = "Bản ghi này đã có trong dữ liệu!";
            }
            else
            {
                this.lblMess.Text = "Lỗi trong quá trình sửa bản ghi!";
            }
        }
    }
    private void ResetLV9()
    {
        //this.cbxNophocphiL9.Checked = false;
        //this.txtNgaynophocphiL9.Text = "";
        //this.cbxNophosoL9.Checked = false;
        //this.txtNgaynophosoL9.Text = "";
        //this.txtNgayHoanThanhL9.Text = "";
        this.txtNoiDungHoanThanhL9.Text = "";
    }
    //End LV9
    #endregion
    #region "Events handle"
    //Check quyen han su dung
    private void CheckUserModule(int UserID, int ModuleID)
    {

    }
    private void loadDataAccess()
    {
        SqlConnection sqlConnec = ConnectData.getConnection();
        objHocVien = new DAHocVien(sqlConnec);
        objNguoidung = new DANguoidung(sqlConnec);
        objNguon = new DANguon(sqlConnec);
        objLichSugoi = new DALichSuCuocGoi(sqlConnec);
        objNguoiTimNguon = new DANguoiTimNguon(sqlConnec);
        objTrangThaiGoi = new DATrangThaiGoi(sqlConnec);
        objLV2 = new DAHocVienLV2(sqlConnec);
        objLV9 = new DAHocVienLV9(sqlConnec);
        objLV3LV5 = new DAHocVienLV3LV5(sqlConnec);
        objLV6LV8 = new DAHocVienLV6LV8(sqlConnec);
        objTrangThai = new DATrangThai(sqlConnec);
        objLog = new DALog(sqlConnec);
        objTruong = new DATruong(sqlConnec);
    }
    //Main load
    protected void Page_Load(object sender, EventArgs e)
    {
        m_ws_call.Url = "http://203.162.121.70:8080/TPCDialOut/services/CallCenter";
        if (Session["UserID"] != null)
        {
            intUserID = Convert.ToInt32(Session["UserID"].ToString().Trim());
            hdfUserId.Value = Session["UserID"].ToString().Trim();
            hdfUserName.Value = Session["UserName"].ToString();
            hdfStatioCode.Value = Session["StationCode"].ToString();
        }

        intUserID = Convert.ToInt32(Session["UserID"].ToString().Trim());
        //txtEmail.Enabled = false;
        //txtDienThoai.Enabled = false;
        loadDataAccess();

        if (Request.QueryString["HocVienID"] != null)
        {
            bool boolCheck = StringUntil.checkNumber(Request.QueryString["HocVienID"].Trim());
            if (boolCheck)
            {
                intHocVienID = Convert.ToInt32(Request.QueryString["HocVienID"].Trim());
            }
        }
        if (Request.QueryString["LevelView"] != null)
        {
            bool boolCheck = StringUntil.checkNumber(Request.QueryString["LevelView"].Trim());
            if (boolCheck)
            {
                intLevelID = Convert.ToInt32(Request.QueryString["LevelView"].Trim());
            }
        }
        if (Request.QueryString["UserList"] != null)
        {
            bool boolCheck = StringUntil.checkNumber(Request.QueryString["UserList"].Trim());
            if (boolCheck)
            {
                intUserList = Convert.ToInt32(Request.QueryString["UserList"].Trim());
            }
        }
        if (!Page.IsPostBack)
        {
            EnabledDefault();
            CheckUserModule(intUserID, intModuleID);
            loadNguon();
            loadTruong();
            if (intLevelID >= ID_Level.Level5A) loadTrangThaiGoiByTiepTucYN("Y");
            else loadTrangThaiGoi();
            loadHocVienID(intHocVienID);
            loadDanhSachTrangThaiByLevel(intLevelID);
            if (intLevelID == ID_Level.Level1)
            {
                try
                {
                    loadLV2ID(ID_Level.Level2, true);
                }
                catch { }
                this.trDiemL3_5B.Visible = false;
                this.pnL2.Visible = true;
                this.pnL3_5B.Visible = false;
                this.pnL6_8.Visible = false;
                this.pnL10.Visible = false;
            }
            else if (intLevelID > 1 && intLevelID <= 5)
            {
                loadLV2ID(ID_Level.Level2, false);
                this.pnL2.Enabled = true;
                this.pnL3_5B.Visible = true;
                this.pnL6_8.Visible = false;
                this.pnL10.Visible = false;
            }
            else if (intLevelID >= 6 && intLevelID <= 8)
            {
                loadLV2ID(ID_Level.Level2, false);
                this.pnL2.Enabled = true;
                this.pnL3_5B.Enabled = true;
                this.pnL6_8.Visible = true;
                this.pnL10.Visible = false;
            }
            else if (intLevelID == ID_Level.Level8)
            {
                loadLV2ID(ID_Level.Level2, false);
                loadLV9ID(ID_Level.Level9, true);
                this.pnL2.Enabled = false;
                this.pnL3_5B.Enabled = false;
                this.pnL6_8.Enabled = false;
                this.pnL10.Visible = true;
            }
            else if (intLevelID == ID_Level.Level9)
            {
                loadLV9ID(ID_Level.Level9, true);
                loadLV2ID(ID_Level.Level2, false);
                this.pnL10.Enabled = true;
                this.pnL2.Enabled = false;
                this.pnL3_5B.Enabled = false;
                this.pnL6_8.Enabled = false;
                this.btnUpdate.Enabled = false;
                this.btnCancel.Enabled = false;
            }

            if (intLevelID == ID_Level.Level2 || intLevelID == ID_Level.Level3)
            {
                if (intLevelID == ID_Level.Level3)
                {
                    loadDiem();
                }
                else
                {
                    try
                    {
                        this.trDiemL3_5B.Visible = false;
                        DataSet drQUyenTemp = objNguoidung.loadQuyenNguoidungbyNguoiDung(intUserID);
                        foreach (DataRow drTemp in drQUyenTemp.Tables[0].Rows)
                        {
                            int intQuyenTemp = Convert.ToInt32(drTemp["QuyenID"].ToString());
                            if (intQuyenTemp != 2 && intQuyenTemp != 3)
                            {
                                loadDiem();
                                this.trDiemL3_5B.Visible = true;
                                break;
                            }
                        }
                    }

                    catch
                    {
                        this.trDiemL3_5B.Visible = false;
                    }
                }
                try
                {
                    loadLV3LV5BID(ID_Level.Level3, true);
                }
                catch { }
            }
            else if (intLevelID > 3 && intLevelID < 6)
            {
                loadDiem();
                loadLV3LV5BID(intLevelID, false);
                try
                {
                    loadLV3LV5BID(intLevelID + 1, true);
                }
                catch { }

            }
            else if (intLevelID == ID_Level.Level5B)
            {
                loadDiem();
                loadLV3LV5BID(ID_Level.Level5B, false);
                try
                {
                    loadL6L8ID(ID_Level.Level6, true);
                }
                catch { }
            }
            else if (intLevelID > 6 && intLevelID < 9)
            {
                loadDiem();
                loadLV3LV5BID(ID_Level.Level5B, false);
                loadL6L8ID(intLevelID, false);
                try
                {
                    loadL6L8ID(intLevelID + 1, true);
                }
                catch { }
            }
            else if (intLevelID == ID_Level.Level8)
            {
                loadDiem();
                loadLV3LV5BID(ID_Level.Level5B, false);
                loadL6L8ID(ID_Level.Level8, false);
            }
            else if (intLevelID == ID_Level.Level9)
            {
                loadDiem();
                loadLV3LV5BID(ID_Level.Level5B, false);
                loadL6L8ID(ID_Level.Level9, false);
            }
            BindData.selectDropDowList(this.ddlDiem, intDiem.ToString());
        }
        this.hplCloseWindows.Attributes.Add("OnClick", "javascript:CloseWin();");
        //this.btnUpdate.Attributes.Add("OnClick", "javascript:ResetForm();");        
    }
    protected string get_file_name(string filename)
    {
        string v_str_createfilename = "";
        v_str_createfilename += "topica" + intLevelID + "_" + filename;
        return v_str_createfilename;
    }
    protected void btnUpdate_Click(object sender, EventArgs e)
    {
        if (Page.IsValid)
        {
            if (m_up_file_hocvien.HasFile)
            {
                string v_str_uploadfolder = Request.PhysicalApplicationPath + "filehocvien\\";
                string v_str_extension = Path.GetExtension(m_up_file_hocvien.PostedFile.FileName);
                string v_str_ten_file = get_file_name(Path.GetFileNameWithoutExtension(m_up_file_hocvien.PostedFile.FileName));
                if (v_str_ten_file.Trim() != "")
                {
                    m_up_file_hocvien.SaveAs(v_str_uploadfolder + v_str_ten_file + v_str_extension);
                    objHocVien.update_filename("filehocvien\\" + v_str_ten_file + v_str_extension, intHocVienID);
                }
            }
            if (!this.ddlTrangThaiAll.SelectedValue.Equals("-1"))
            {
                if (!this.ddlTrangThaiGoi.SelectedValue.Equals("-1"))
                {
                    UpdateGroup();
                    if (m_i_trang_thai_update == 0)
                    {
                        if (intLevelID == 1)
                        {
                            CreateLV2(true);
                        }
                        else if (intLevelID == 2 || intLevelID == 3 || intLevelID == 4 || intLevelID == 5)
                        {
                            if (!CheckValidLV3LV5B()) return;
                            CreateLV2(false);
                            DataRow dr = objTrangThai.loadTrangThaiID(Convert.ToInt32(this.ddlTrangThaiAll.SelectedValue));
                            if (dr != null)
                            {
                                int intLevelIDView = Convert.ToInt32(dr["LevelID"].ToString());
                                for (int i = intLevelID; i < intLevelIDView; i++)
                                {
                                    int intTrangThai = Convert.ToInt32(this.ddlTrangThaiAll.SelectedValue);
                                    if ((i + 1) != intLevelIDView)
                                    {
                                        DataRow drMain = objTrangThai.loadTrangThaiIDByLevelMain(i + 1);
                                        if (dr != null)
                                        {
                                            intTrangThai = Convert.ToInt32(drMain["ID"].ToString());
                                        }
                                    }
                                    CreateLV3LV5(i + 1, true, intTrangThai);
                                }
                            }
                        }
                        else if (intLevelID == 6 || intLevelID == 7 || intLevelID == 8)
                        {
                            if (!CheckValidLV6LV8()) return;
                            CreateLV2(false);
                            CreateLV3LV5(6, false, Convert.ToInt32(this.ddlTrangThaiAll.SelectedValue));
                            DataRow dr = objTrangThai.loadTrangThaiID(Convert.ToInt32(this.ddlTrangThaiAll.SelectedValue));
                            if (dr != null)
                            {
                                int intLevelIDView = Convert.ToInt32(dr["LevelID"].ToString());
                                for (int i = intLevelID; i < intLevelIDView; i++)
                                {
                                    int intTrangThai = Convert.ToInt32(this.ddlTrangThaiAll.SelectedValue);
                                    if ((i + 1) != intLevelIDView)
                                    {
                                        DataRow drMain = objTrangThai.loadTrangThaiIDByLevelMain(i + 1);
                                        if (dr != null)
                                        {
                                            intTrangThai = Convert.ToInt32(drMain["ID"].ToString());
                                        }
                                    }
                                    CreateL6L8(i + 1, true, intTrangThai);
                                }
                            }
                        }
                        else if (intLevelID == 9)
                        {
                            DataRow dr = objTrangThai.loadTrangThaiID(Convert.ToInt32(this.ddlTrangThaiAll.SelectedValue));
                            if (dr != null)
                            {
                                int intLevelIDView = Convert.ToInt32(dr["LevelID"].ToString());
                                for (int i = intLevelID; i < intLevelIDView; i++)
                                {
                                    int intTrangThai = Convert.ToInt32(this.ddlTrangThaiAll.SelectedValue);
                                    if ((i + 1) != intLevelIDView)
                                    {
                                        DataRow drMain = objTrangThai.loadTrangThaiIDByLevelMain(i + 1);
                                        if (dr != null)
                                        {
                                            intTrangThai = Convert.ToInt32(drMain["ID"].ToString());
                                        }
                                    }
                                    CreateLV9(i + 1, true, intTrangThai);
                                }
                            }
                        }
                        else if (intLevelID == 10)
                        {
                            CreateLV9(10, false, Convert.ToInt32(this.ddlTrangThaiAll.SelectedValue));
                        }
                        //insser_call

                        // Khác 10 là cho nhập thông tin cuộc gọi
                        if (m_i_add_call_ok != 10)
                        {
                            m_str_noi_dung_ngay_goi = txtNoiDungNgayGoiAll.Text.Trim();
                            // Phần add lịch sử cuộc gọi, nếu như có cuộc gọi
                            string v_str_call_info = "";
                            if (hdfCallID.Value != "" && hdfCallID.Value != "-1")
                            {
                                v_str_call_info = call_2_contact(1, 2);
                                DALichSuCuocGoi objCallInfor = JsonConvert.DeserializeObject<DALichSuCuocGoi>(v_str_call_info);
                                //Utilities.WriteToLog("Mã lỗi: " + objCallInfor.data.error_code + "; Mô tả: " + objCallInfor.data.error_desc);
                                objCallInfor.connec = objLichSugoi.connec;
                                if (objCallInfor.data.end_time != "")
                                {
                                    form_2_us_lich_su_cuoc_goi(objCallInfor);
                                    if (intLevelID == 1)
                                    {
                                        int v_i_level = intLevelID + 1;
                                        objCallInfor.update_lich_su_goi(Convert.ToInt32(this.ddlTrangThaiAll.SelectedValue), v_i_level);
                                    }
                                    else
                                    {
                                        objCallInfor.update_lich_su_goi(Convert.ToInt32(this.ddlTrangThaiAll.SelectedValue), intLevelID);
                                    }
                                    objLog.insertLog(intLevelID, intHocVienID, 4, intUserID);
                                    Session["call_id"] = null;
                                    hdfCallID.Value = "";
                                }
                                else
                                {
                                    lblMess.Text = "Cuộc gọi chưa kết thúc!";
                                    return;
                                }
                            }
                            else
                            {
                                // Chỗ này là insert vào lịch sử cuộc gọi mà ko có cuộc gọi
                                DALichSuCuocGoi v_obj_lichsu = new DALichSuCuocGoi(objLichSugoi.connec);
                                v_obj_lichsu.StrNoiDungCuocGoi = m_str_noi_dung_ngay_goi;
                                v_obj_lichsu.IntHocVienId = intHocVienID;
                                v_obj_lichsu.IntLevelId = Convert.ToInt32(this.ddlTrangThaiAll.SelectedValue);
                                v_obj_lichsu.insert_lich_su_goi_ko_co_callid(txtDienThoai.Text.Trim()
                                                                            , "KO_CO", int_Level_huong_toi);
                            }
                        }


                        //End insert_call
                        Session["UserID"] = intUserID;
                        objLog.insertLog(intLevelID, intHocVienID, 4, intUserID);
                    }
                    else return;
                }
                else
                {
                    this.lblMess.Text = "Bạn phải nhập trạng thái gọi";
                }
            }
            else
            {
                this.lblMess.Text = "Bạn phải nhập trạng thái";
            }
        }

    }
    private void form_2_us_lich_su_cuoc_goi(DALichSuCuocGoi ip_list_call_info)
    {
        ip_list_call_info.IntHocVienId = intHocVienID;
        ip_list_call_info.IntLevelId = int_Level_huong_toi;
        ip_list_call_info.StrNoiDungCuocGoi = m_str_noi_dung_ngay_goi;
        if (Session["DienThoaiCall"] != null)
            ip_list_call_info.data.mobile_phone = Session["DienThoaiCall"].ToString();
        else ip_list_call_info.data.mobile_phone = txtDienThoai.Text;
    }
    protected void btnCancel_Click(object sender, EventArgs e)
    {
        if (intLevelID == 1)
        {
            ResetLV2();
        }
        else if (intLevelID == 2 || intLevelID == 3 || intLevelID == 4 || intLevelID == 5)
        {
            ResetLV3LV5B();
        }
        else if (intLevelID == 6 || intLevelID == 7 || intLevelID == 8 || intLevelID == 9)
        {
            ResetLV6LV8();
        }
        else if (intLevelID == 10)
        {
            ResetLV9();
        }
    }
    protected void ddlNguon_SelectedIndexChanged(object sender, EventArgs e)
    {
        loadNguoiTimNguon();
    }
    protected void ddlTruong_SelectedIndexChanged(object sender, EventArgs e)
    {
        loadNguoiTimNguon();
    }
    #endregion
    protected void rdbCoLV2_CheckedChanged(object sender, EventArgs e)
    {
        try
        {
            loadTrangThaiGoiByTiepTucYN("Y");
            loadDanhSachTrangThaiByLevelAndIsMain(ID_Level.Level2, true);
            //this.cbxquantri.Attributes.Remove("disabled");
            //this.cbxKetoan.Attributes.Remove("disabled");
            //this.cbxTinhoc.Attributes.Remove("disabled");
            //this.cbxtaichinh.Attributes.Remove("disabled");
            //this.cbxkhaclaybangLV2.Attributes.Remove("disabled");
            cbxquantri.Disabled = false;
            cbxKetoan.Disabled = false;
            cbxTinhoc.Disabled = false;
            cbxtaichinh.Disabled = false;
            cbxkhaclaybangLV2.Disabled = false;
        }
        catch
        {

            throw;
        }
    }
    protected void rdbKhongLV2_CheckedChanged(object sender, EventArgs e)
    {
        try
        {
            loadTrangThaiGoiByTiepTucYN("N");
            loadDanhSachTrangThaiByLevelAndIsMain(ID_Level.Level2, false);
            cbxquantri.Disabled = true;
            cbxKetoan.Disabled = true;
            cbxTinhoc.Disabled = true;
            cbxtaichinh.Disabled = true;
            cbxkhaclaybangLV2.Disabled = true;
        }
        catch
        {

            throw;
        }
    }
    protected void rdbLichhenLV3LV5_CheckedChanged(object sender, EventArgs e)
    {
        try
        {
            loadTrangThaiGoiByTiepTucYN("Y");
            loadDanhSachTrangThaiByLevelAndIsMain(ID_Level.Level3, true);
            txtlichhenLV3LV5.Enabled = true;
            txtKhongLichHenLV3LV5.Enabled = false;
        }
        catch
        {

            throw;
        }
    }
    protected void rdbKhongLichhenLV3LV5_CheckedChanged(object sender, EventArgs e)
    {
        try
        {
            loadTrangThaiGoiByTiepTucYN("N");
            loadDanhSachTrangThaiByLevelAndIsMain(ID_Level.Level3, false);
            txtlichhenLV3LV5.Enabled = false;
            txtKhongLichHenLV3LV5.Enabled = true;
        }
        catch
        {

            throw;
        }
    }
    protected void rblRoigaptructiepLV3LV5_CheckedChanged(object sender, EventArgs e)
    {
        try
        {
            loadTrangThaiGoiByTiepTucYN("Y");
            loadDanhSachTrangThaiByLevelAndIsMain(ID_Level.Level4, true);
            txtlydochuagapLV3LV5.Enabled = false;
        }
        catch
        {

            throw;
        }
    }
    protected void rblChuatoigaptructiepLV3LV5_CheckedChanged(object sender, EventArgs e)
    {
        try
        {
            loadTrangThaiGoiByTiepTucYN("N");
            loadDanhSachTrangThaiByLevelAndIsMain(ID_Level.Level4, false);
            txtlydochuagapLV3LV5.Enabled = true;
        }
        catch
        {

            throw;
        }
    }

    protected void rbldanhanGF300_CheckedChanged(object sender, EventArgs e)
    {
        try
        {
           
            loadDanhSachTrangThaiByLevelAndIsMain(ID_Level.Level3, true);
          
        }
        catch
        {

            throw;
        }
    }
    protected void rblchuanhanGF300_CheckedChanged(object sender, EventArgs e)
    {
        try
        {
          
            loadDanhSachTrangThaiByLevelAndIsMain(ID_Level.Level3, false);
           
        }
        catch
        {

            throw;
        }
    }

    protected void rdblCodangkydutuyenLV3LV5_CheckedChanged(object sender, EventArgs e)
    {
        try
        {
            loadTrangThaiGoiByTiepTucYN("Y");
            loadDanhSachTrangThaiByLevelAndIsMain(ID_Level.Level5A, true);
            txtdangkydutuyenLV3LV5.Enabled = true;
        }
        catch
        {

            throw;
        }
    }
    protected void rdblKhongdangkydutuyenLV3LV5_CheckedChanged(object sender, EventArgs e)
    {
        try
        {
            loadTrangThaiGoiByTiepTucYN("Y");
            loadDanhSachTrangThaiByLevelAndIsMain(ID_Level.Level5A, false);
            txtdangkydutuyenLV3LV5.Enabled = true;
        }
        catch
        {

            throw;
        }
    }
    protected void rdblRoiNopPhieuLV3LV5_CheckedChanged(object sender, EventArgs e)
    {
        try
        {
            loadTrangThaiGoiByTiepTucYN("Y");
            loadDanhSachTrangThaiByLevelAndIsMain(ID_Level.Level5B, true);
            txtchuanopphieuLV3LV5.Enabled = true;
        }
        catch
        {

            throw;
        }
    }
    protected void rdblChuaNopPhieuLV3LV5_CheckedChanged(object sender, EventArgs e)
    {
        try
        {
            loadTrangThaiGoiByTiepTucYN("Y");
            loadDanhSachTrangThaiByLevelAndIsMain(ID_Level.Level5B, false);
            txtchuanopphieuLV3LV5.Enabled = true;
        }
        catch
        {

            throw;
        }
    }
    private void get_infor_from_start_call(DALichSuCuocGoi ip_list_call_info, CCallInfor ip_objinfor)
    {
        ip_list_call_info.IntHocVienId = intHocVienID;
        ip_list_call_info.data = new CallInfor();
        ip_list_call_info.data.call_id = ip_objinfor.data.call_id;
        ip_list_call_info.data.error_code = ip_objinfor.data.error_code;
        ip_list_call_info.data.error_desc = ip_objinfor.data.error_desc;
        if (Session["StationCode"] != null)
            ip_list_call_info.data.station_id = Session["StationCode"].ToString();
        else ip_list_call_info.data.station_id = hdfStatioCode.Value;
        if (Session["DienThoaiCall"] != null)
            ip_list_call_info.data.mobile_phone = Session["DienThoaiCall"].ToString();
        else ip_list_call_info.data.mobile_phone = hdfDienThoaiCall.Value;
    }
    /// <summary>
    /// Hàm này thực hiện việc thu thập thông tin gọi và call cho contact
    /// </summary>
    /// <param name="ip_thu_tu_dt">1: Gọi điện thoại 1 của contact; 2: gọi đt 2</param>
    /// <param name="ip_i_code">1: call; 2: get call infor</param>
    private string call_2_contact(int ip_thu_tu_dt, int ip_i_code)
    {
        string strInputSubmit = "";
        string v_str_result = "";
        string strAgencode = "";
        string strMobilePhone = "";
        string strDatetimeRequest = DateTime.Now.ToLongTimeString();
        string strMessageCode = "001";
        string strCallId = "";

        if (Session["UserName"] != null)
            strAgencode = Session["UserName"].ToString();
        else
        {
            strAgencode = hdfUserName.Value;
        }
        string strStationId = "";
        if (Session["StationCode"] != null)
            strStationId = Session["StationCode"].ToString();
        else strStationId = hdfStatioCode.Value;
        if (ip_thu_tu_dt == 1)
        {
            strMobilePhone = "0" + txtDienThoai.Text.Trim();
        }
        else
        {
            strMobilePhone = "0" + txtDienThoai2.Text.Trim();
        }
        //strMobilePhone = System.Configuration.ConfigurationManager.AppSettings["PhoneCall"].ToString();
        Session["DienThoaiCall"] = strMobilePhone;

        if (ip_i_code == 1)
        {
            strInputSubmit = "<agent_code>" + strAgencode + "</agent_code>"
                                   + "<mobile_phone>" + strMobilePhone + "</mobile_phone>"
                                   + "<station_id>" + strStationId + "</station_id>"
                                   + "<datetime_request>" + strDatetimeRequest + "</datetime_request>"
                                   + "<message_code>" + strMessageCode + "</message_code>";
        }
        else if (ip_i_code == 2)
        {
            strMessageCode = "002";
            if (Session["call_id"] != null)
                strCallId = Session["call_id"].ToString();
            else strCallId = hdfCallID.Value;
            if (strCallId == "-1") return "";
            strInputSubmit = "<agent_code>" + strAgencode + "</agent_code>"
                                    + "<mobile_phone>" + strMobilePhone + "</mobile_phone>"
                                    + "<station_id>" + strStationId + "</station_id>"
                                    + "<datetime_request>" + strDatetimeRequest + "</datetime_request>"
                                    + "<message_code>" + strMessageCode + "</message_code>"
                                    + "<call_id>" + strCallId + "</call_id>";
        }

        // Call API call 2 contact
        try
        {
            v_str_result = m_ws_call.submit(strInputSubmit);
            //v_str_result = "{'data': { 'message_code': '001', 'agent_code': 'linhdh', 'station_id': '2000', 'mobile_phone': '03678334137', 'datetime_response': '20140322000000', 'call_id': '1393487163', 'start_time': '20140227144603', 'end_time': '20140227144812', 'duration': '118', 'ringtime': '11', 'link_down_record': '/var/spool/asterisk/monitor/Recordings/20140227/Q-tpc_test-1004-20140227144354-1393487032.2049.wav', 'status': '2', 'error_code': '0', 'error_desc': 'success' }}";
        }
        catch (Exception v_e)
        {
            //Utilities.WriteToLog(v_e);
        }
        return v_str_result;
    }
    protected void m_cmd_img_call_1_Click(object sender, ImageClickEventArgs e)
    {
        try
        {
            string v_str_call_info = "";
            Session["call_id"] = null;
            hdfCallID.Value = "";
            v_str_call_info = call_2_contact(1, 1);
            CCallInfor v_objinfor = JsonConvert.DeserializeObject<CCallInfor>(v_str_call_info);
            //Nếu call có lỗi
            if (v_objinfor.data.error_code == "1" || v_objinfor.data.call_id == null)
            {
                lblMess.Text = "Có lỗi trong quá trình gọi contact. Hãy kiểm tra lại thiết bị hoặc đường truyền! (mô tả: " + v_objinfor.data.error_desc + ")";
                Session["call_id"] = "-1"; // có lỗi
                hdfCallID.Value = "-1";
                return;
            }
            Session["call_id"] = v_objinfor.data.call_id;
            hdfCallID.Value = v_objinfor.data.call_id;
            try
            {

                get_infor_from_start_call(objLichSugoi, v_objinfor);
                objLichSugoi.insert_lich_su_goi();
            }
            catch (Exception v_e)
            {
                //Utilities.WriteToLog(v_e);
            }
            m_cmd_img_call_1.ImageUrl = "~/images/Button/phone.png";
            m_cmd_img_call_1.Enabled = false;
        }
        catch (Exception v_e)
        {
            //Utilities.WriteToLog(v_e);
        }
    }
    protected void m_cmd_img_call2_Click(object sender, ImageClickEventArgs e)
    {
        try
        {
            string v_str_call_info = "";
            Session["call_id"] = null;
            hdfCallID.Value = "";
            v_str_call_info = call_2_contact(2, 1);
            //v_str_call_info = "[" + v_str_call_info + "]";
            CCallInfor v_objinfor = JsonConvert.DeserializeObject<CCallInfor>(v_str_call_info);
            if (v_objinfor.data.error_code == "1")
            {
                lblMess.Text = "Có lỗi trong quá trình gọi contact. Hãy kiểm tra lại thiết bị hoặc đường truyền! (mô tả: " + v_objinfor.data.error_desc + ")";
                Session["call_id"] = "-1";
                hdfCallID.Value = "-1";
                return;
            }
            Session["call_id"] = v_objinfor.data.call_id;
            hdfCallID.Value = v_objinfor.data.call_id;
            try
            {
                get_infor_from_start_call(objLichSugoi, v_objinfor);
                objLichSugoi.insert_lich_su_goi();
            }
            catch (Exception v_e)
            {
                // Utilities.WriteToLog(v_e);
            }
            m_cmd_img_call2.ImageUrl = "~/images/Button/phone.png";
            m_cmd_img_call2.Enabled = false;
        }
        catch (Exception v_e)
        {
            throw v_e;
        }
    }

    protected void txtdenthiLV6LV8_TextChanged(object sender, EventArgs e)
    {

    }
}
